package com.hmall.item.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hmall.common.dto.PageDTO;

import com.hmall.common.entity.Item;
import com.hmall.common.vo.PageVO;

public interface ItemService extends IService<Item> {

    /**
     * 页面查询
     *
     * @param pageDTO 页面 DTO
     * @return {@link PageVO}<{@link Item}>
     */
    PageVO<Item> pageQuery(PageDTO pageDTO);

    /**
     * 按 ID 选择
     *
     * @param id 编号
     * @return {@link Item}
     */
    Item selectById(Long id);

    /**
     * 插入一个
     *
     * @param item 项目
     */
    void insertOne(Item item);

    /**
     * 按 ID 修改状态
     *
     * @param id     编号
     * @param status 地位
     */
    void modifyStatusById(Long id, Integer status);

    /**
     * 修改项目
     *
     * @param item 项目
     */
    void modifyItem(Item item);

    /**
     * 按 ID 删除项目
     *
     * @param id 编号
     */
    void deleteItemById(Long id);
}
